<?php
// +----------------------------------------------------------------------
// | Author: Stupboy King
// +----------------------------------------------------------------------
namespace app\api\controller\driver;
use think\Config;
use think\Db;
use app\api\model\Driver as DriverModel;
/**
 * @name【首页管理】
 * @baseurl【driver.index】
 * @file【driver/home.php】
 */
class Home extends Base
{
    /**
     * 开启鉴权
     */
    protected $beforeActionList = [
        'auth'=>['except'=>'getWebPage'],
    ];
    /**
     * @name【首页内容】
     * @desc【首页内容】
     * @uri【home】
     * @method【post】
     * @param【
     * dtoken $ string $ abcd $ 校验码 $ 1
     * 】
     * @return【
     * code $ int $ number|1-1 $ 校验码#
     * msg $ string $  $ 错误信息#
     * xing $ int $  $ 星级#
     * server $ float $  $ 服务分#
     * car_brand  $ string $  $ 品牌#
     * car_no  $ string $  $ 车牌#
     * car_model  $ string $  $ 车型#
     * rental_name  $ string $  $ 公司#
     * driver_name  $ string $  $ 司机姓名#
     * phone  $ string $  $ 手机#
     * orders  $ int $  $ 订单数#
     * money  $ float $  $ 今日流水#
     * online_time  $ int $  $ 在线时长秒#
     * receive_rate  $ float $  $ 接单率#
     * sex $ int $ $ 0男1女
     * state $ int $$ 0启用1禁用
     * 】
     */
    public function index(){
        $data                  = (new DriverModel)->homeData($this->driverInfo['driver_id']);
        $data['online_time']   = round((time() - $this->driverInfo['loginTime'])/3600,2);
        $string = 'xing|星级,server|服务分,car_brand|车品牌,car_no|车牌,car_model|车型,rental_name|单位';
        $string.= ',driver_name|司机姓名,phone|司机电话,sex|性别,state|状态,head_img|头像地址,withdraw_password|提现密码';
        $string.= ',money|余额,orders|订单数,online_time|在线时间,receive_rate|接单率';
        $data['description'] = analyzeDesc($string);
        return $this->retSucc($data);
    }

    /**
     * @name【控件页面】
     * @desc【控件页面】
     * @uri【getWebPage】
     * @method【post】
     * @param【
     * dtoken   $ string $ abcd $ 校验码 #
     * type    $ int $ 1 $ 控件类型 1用车协议 2帮助说明 3计费规则 4银行卡说明 5提现说明 $ 1
     * 】
     * @return【
     * code $ int $ number|1-1 $ 校验码#
     * msg $ string $  $ 错误信息 #
     * url $ string $ $ 地址
     * 】
     */
    public function getWebPage(){
        $areaId = $this->driverInfo['area_id'] ?  $this->driverInfo['area_id'] : 0;
        $type   = input('type',1);
        $areaStr= $areaId.',0';
        $where['area_id']  = ['in',$areaStr];
        $where['type']     = $type;
        $where['page_type']= 1;
        $page              = Db::name('mobile_page')->where($where)->field('is_auth,type')->find();
        if(empty($page)){
            return $this->retError(125);
        }
        if($page['is_auth']==1){
            $this->auth();
        }
        return $this->retSucc(['url'=>Config::get('base.web_url').url('api/page/index',['type'=>$type,'area'=>4,'page_type'=>1])]);
    }

    /**
     * @name【消息列表】
     * @desc【消息列表】
     * @uri【getMessage】
     * @method【post】
     * @param【
     *  dtoken $ string $ abcd $ 校验码 $1#
     *  page $ int $ 1 $ 页数 #
     *  pagenum $ int $ 10 $ 记录数
     * 】
     * @return【
     * code $ int $ number|1-1 $ 校验码#
     * msg $ string $  $ 错误信息
     * 】
     */
    public function getMessage(){
        $message = [
            [
                'title'=>'消息1',
                'content'=>'内容1',
                'send_time'=>'2018-01-01 09:30:00'
            ],
            [
                'title'=>'消息2',
                'content'=>'内容2',
                'send_time'=>'2018-01-02 09:31:00'
            ],
        ];
        $data['data'] = $message;
        $data['count']= 2;
        return $this->retSucc($data);
    }
}